#include "Transaccion.h"
#include "Sistema.h"

uint64_t Transaccion::proximaId = 1;

Transaccion::Transaccion(){
     id = proximaId++;
     //TODO: que alguien me diga el primer bloque
     bloque=0;
}

void Transaccion::avanzar(){
     /* Avanza tantos bloques como puede */
     while(Sistema::getInstancia().getBloque(bloque)->ejecutar(*this));
}

void Transaccion::setProximoBloque(uint64_t numero){
     bloque = numero;
}

double Transaccion::getParametro(const std::string& nombre){
     return parametros[nombre];
}

uint64_t Transaccion::getPrioridad(){
     return prioridad;
}
